Synty POLYGON Military characters for both factions - #23
Merged
Conversation
Replaces the generated and CC0 characters on the bots with purchased Synty
POLYGON Military models: `Insurgent_Male_01` for Nightcell, `Soldier_Male_01`
for the Directorate. The pack has both by name, which is what neither the
generated set nor the generic CC0 pack could offer — the best that pack had was
an `Adventurer` standing in for an insurgent and a hi-vis `Worker` before it.
~2k triangles each on a 55-bone Unreal-standard skeleton, against 5.9k for the
generated character. Total shipped assets fall to 5.13 MB against a 9 MB guard.
Adds `import_synty.py`, which does two things the plain glTF path cannot:
- Retargets animation. Synty's SourceFiles carry a bind pose only; the cycles
live in the engine-locked Unity and Unreal packages. The script maps our
CC0 clips onto the Unreal skeleton with copy-rotation constraints and bakes
them. Copying f-curves directly does not work — curves are in each bone's
rest space and the rigs do not share rest orientations, which produces a
figure with its arms through its chest.
- Shares the atlas. Synty puts the whole pack on one 4096 texture; embedding
it per character cost 2.48 MB each, and binding it once by material name
costs 357 KB total with characters at ~650 KB.
Two details worth keeping: the baked clips take the source clip names only
after the source is renamed out of the way, because Blender appends `.001` and
the engine looks clips up by exact name; and the renamed sources are deleted
before export or they ship alongside and double the animation count.
Source files are not committed. The pack is 406 MB unpacked and lives outside
the repo; PROVENANCE.md records the purchased licence.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
vu1nz Security Review0 finding(s) in PR #? No security issues found. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replaces the generated and CC0 characters with the purchased Synty POLYGON Military models:
Insurgent_Male_01for Nightcell,Soldier_Male_01for Directorate. The pack has both by name — which neither the generated set nor the generic CC0 pack could offer (best that pack had was anAdventurerstanding in for an insurgent, and a hi-visWorkerbefore that).~2k triangles each on a 55-bone Unreal-standard skeleton, vs 5.9k for the generated character. Shipped assets drop to 5.13 MB against a 9 MB guard.
import_synty.pyDoes two things the plain glTF path can't:
Two details worth keeping: baked clips take the source names only after the source is renamed out of the way (Blender appends
.001, and the engine looks clips up by exact name); and the renamed sources are deleted before export or they ship alongside and double the animation count.Source files aren't committed — 406 MB unpacked, outside the repo.
PROVENANCE.mdrecords the purchased licence.201 tests pass. Format, lint, typecheck clean.
🤖 Generated with Claude Code